<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="../node_modules/jquery/dist/jquery.js"></script>
</head>
<body>
    <script>
        var arr = [1,2,3];
        var obj = {1:3,3:4,5:6,7:8,length:5};

        /**
         * 利用原生的JavaScript
         * 1、第一个参数:当前遍历的集合元素
         * 2、第二个参数:当前数组遍历的索引
         * 3、第三个元素：当前所遍历的数组本身
         *
         * 和原生的JavaScript中的forEeach一样不能遍历伪数组
         */
        arr.map(function (value, index, array) {
            console.log(index,index,array);
        })
        // obj.map(function (value, index, array) {
        //     console.log(index,index,array);
        // })

        /**
         * 第一个参数 要遍历的数组
         * 第二个参数 每遍历一次都会有一个要执行的回调函数
         */
        /**
         * jQuery的map和each的区别
         * each静态方法是遍历谁就返回谁
         * mao静态方法的返回值是个空数组
         *
         * each方法不支持在回调函数中怼遍历的数组进行处理
         * 而map静态方法，可以通过return来组成新的数组
         * @type {jQuery}
         */
        var result = $.map(obj,function (value,index) {
            console.log(index,index);
            return value + index;
        })
        var result2 = $.each(obj,function (index,value) {
            console.log(value + "  ====  " + index);
        })
        console.log(result);
        console.log(result2);
    </script>
</body>
</html>